NormalDistribution::NormalDistribution(vector< double> data)
{
  d_data     = data;
  d_mean     = computeMean();
  d_variance = computeVariance();
}

NormalDistribution::~NormalDistribution()
{
}

double NormalDistribution::computeSum()
{
  double sum = 0;
  for (size_t index = 0; index < d_data.size(); index++)
    sum += d_data[index];
  return sum;
}

double NormalDistribution::computeMean()
{
  return computeSum() / ((double)d_data.size())
}

double NormalDistribution::computeVariance()
{
    double variance = 0;
    for (size_t index = 0; index < data.size(); v++)
        variance += (d_data[i] - datamean) * (d_data[i] - datamean);
    return variance / ((double)(data.size() - 1.0));
}

double NormalDistribution::compute##Distance(NormalDistribution other)
{
    double distance = 0;
    return distance;
}

double NormalDistribution::getChance(double location)
{

???
1/
1+ x ^-t

return normal chance
}
